home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Controls / Visual Basic Controls.iso / vbcontrol / imgdllll / imgdlg.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-04-03  |  4.7 KB  |  204 lines

  1. // imgDlg.h : header file
  2. //
  3.  
  4. #if !defined(AFX_IMGDLG_H__F5E79507_40DD_11D1_8159_444553540000__INCLUDED_)
  5. #define AFX_IMGDLG_H__F5E79507_40DD_11D1_8159_444553540000__INCLUDED_
  6.  
  7. #if _MSC_VER >= 1000
  8. #pragma once
  9. #endif // _MSC_VER >= 1000
  10.  
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CImgDlg dialog
  13.  
  14. class CImgDlg : public CDialog
  15. {
  16. // Construction
  17. public:
  18.     CImgDlg(CWnd* pParent = NULL);    // standard constructor
  19.  
  20.     ~CImgDlg();
  21.  
  22. // Dialog Data
  23.     //{{AFX_DATA(CImgDlg)
  24.     enum { IDD = IDD_IMGDEMO_DIALOG };
  25.     CStatic    m_histoFrame;
  26.     CStatic    m_colorTextWnd;
  27.     CButton    m_hFlipCheck;
  28.     CButton    m_histGreenCheck;
  29.     CButton    m_histCheck;
  30.     CButton    m_histRedCheck;
  31.     CEdit    m_histLowWnd;
  32.     CEdit    m_histHighWnd;
  33.     CButton    m_histBlueCheck;
  34.     CStatic    m_beforeRectWnd;
  35.     CEdit    m_quantColorsWnd;
  36.     CButton    m_quantCheck;
  37.     CButton    m_LUTCheck;
  38.     CButton    m_rgbbgrCheck;
  39.     CButton    m_grayCheck;
  40.     CButton    m_flipCheck;
  41.     CStatic    m_imgRectWnd;
  42.     CEdit    m_sharpenLevelWnd;
  43.     CButton    m_sharpenCheck;
  44.     CEdit    m_matrix8Wnd;
  45.     CEdit    m_matrix7Wnd;
  46.     CEdit    m_matrix6Wnd;
  47.     CEdit    m_matrix5Wnd;
  48.     CEdit    m_matrix4Wnd;
  49.     CEdit    m_matrix3Wnd;
  50.     CEdit    m_matrix2Wnd;
  51.     CEdit    m_matrix0Wnd;
  52.     CEdit    m_matrix1Wnd;
  53.     CButton    m_matrixZeroCheck;
  54.     CButton    m_matrixRedCheck;
  55.     CButton    m_matrixOnCheck;
  56.     CEdit    m_matrixLevelWnd;
  57.     CButton    m_matrixGreenCheck;
  58.     CButton    m_matrixFeedbackCheck;
  59.     CButton    m_matrixBlueCheck;
  60.     CButton    m_LUTRedCheck;
  61.     CButton    m_LUTGreenCheck;
  62.     CButton    m_LUTBlueCheck;
  63.     CEdit    m_BlurLevelWnd;
  64.     CButton    m_BlurCheck;
  65.     //}}AFX_DATA
  66.  
  67.     // ClassWizard generated virtual function overrides
  68.     //{{AFX_VIRTUAL(CImgDlg)
  69.     protected:
  70.     virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  71.     //}}AFX_VIRTUAL
  72.  
  73. // Implementation
  74. protected:
  75.     HICON m_hIcon;
  76.  
  77.     // Generated message map functions
  78.     //{{AFX_MSG(CImgDlg)
  79.     virtual BOOL OnInitDialog();
  80.     afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
  81.     afx_msg void OnPaint();
  82.     afx_msg HCURSOR OnQueryDragIcon();
  83.     afx_msg void OnBlurCheck();
  84.     afx_msg void OnChangeBlurLevel();
  85.     afx_msg void OnFlip();
  86.     afx_msg void OnGrayscale();
  87.     afx_msg void OnLutBlue();
  88.     afx_msg void OnLutGreen();
  89.     afx_msg void OnLutRed();
  90.     afx_msg void OnMatrixBlue();
  91.     afx_msg void OnMatrixFeedback();
  92.     afx_msg void OnMatrixGreen();
  93.     afx_msg void OnChangeMatrixLevel();
  94.     afx_msg void OnMatrixOn();
  95.     afx_msg void OnMatrixRed();
  96.     afx_msg void OnMatrixZero();
  97.     afx_msg void OnChangeMatrix0();
  98.     afx_msg void OnChangeMatrix1();
  99.     afx_msg void OnChangeMatrix2();
  100.     afx_msg void OnChangeMatrix3();
  101.     afx_msg void OnChangeMatrix4();
  102.     afx_msg void OnChangeMatrix5();
  103.     afx_msg void OnChangeMatrix6();
  104.     afx_msg void OnChangeMatrix7();
  105.     afx_msg void OnChangeMatrix8();
  106.     afx_msg void OnOpen();
  107.     afx_msg void OnRgbbgr();
  108.     afx_msg void OnSave();
  109.     afx_msg void OnSharpenCheck();
  110.     afx_msg void OnChangeSharpenLevel();
  111.     afx_msg void OnInvlut();
  112.     afx_msg void OnLinlut();
  113.     afx_msg void OnLutcheck();
  114.     afx_msg void OnQuantizeCheck();
  115.     afx_msg void OnAbout();
  116.     afx_msg void OnChangeQuantColors();
  117.     afx_msg void OnHistBlue();
  118.     afx_msg void OnHistGreen();
  119.     afx_msg void OnChangeHistHigh();
  120.     afx_msg void OnChangeHistLow();
  121.     afx_msg void OnHistRed();
  122.     afx_msg void OnHistcheck();
  123.     afx_msg void OnHorizflip();
  124.     afx_msg void OnRotate180();
  125.     afx_msg void OnRotate270();
  126.     afx_msg void OnRotate90();
  127.     afx_msg void OnRotateNone();
  128.     afx_msg void OnEqBlue();
  129.     afx_msg void OnEqGreen();
  130.     afx_msg void OnEqLum();
  131.     afx_msg void OnEqRed();
  132.     //}}AFX_MSG
  133.     DECLARE_MESSAGE_MAP()
  134.  
  135. protected:
  136.     BOOL    m_doGray;
  137.     BOOL    m_doRGBBGR;
  138.     BOOL    m_doFlip;
  139.     BOOL    m_doLUT;
  140.     BOOL    m_doMatrix;
  141.     BOOL    m_doSharpen;
  142.     BOOL    m_doBlur;
  143.     BOOL    m_doQuantize;
  144.     BOOL    m_doEQ;
  145.  
  146.     // sharpen
  147.     int        m_iSharpenLevel;
  148.  
  149.     // blur
  150.     int        m_iBlurLevel;
  151.  
  152.     BOOL    m_doHFlip ;
  153.     // LUT
  154.     BYTE    m_LUT[256];
  155.     BYTE    m_LUTChannelMask;
  156.     BOOL    m_linLut;
  157.  
  158.     // EQ
  159.     BYTE    m_EQChannelMask;
  160.     int        m_iEQLowLevel;
  161.     int        m_iEQHighLevel;
  162.  
  163.     // eq graph
  164.     BYTE    m_EQGraphMask;
  165.     int        m_EQHisto[256];
  166.  
  167.     // matrix 
  168.     double    m_fMatrix[9];
  169.     double    m_fMatrixLevel;
  170.     BOOL    m_bZero;
  171.     BOOL    m_bFeedback;
  172.     BYTE    m_MatrixChannelMask;
  173.  
  174.     // quantize
  175.     int        m_iQuantColors;
  176.  
  177.     // global image buffer
  178.     BYTE    *m_rgbBuf;
  179.     UINT    m_width;
  180.     UINT    m_height;
  181.  
  182.     // global palette
  183.     CPalette m_pal;
  184.  
  185.     int        m_quickRotationType;
  186.  
  187. protected:
  188.     void    CleanUp();
  189.     void    SetAllControls();
  190.     void    LoadDefaultImage();
  191.     CString StringFromErrorNum(int err);
  192.     BYTE *    RenderImage();
  193.     void    InvalidateAfterImage();
  194.     void    InvalidateBeforeImage();
  195.     void    SetLUT();
  196.     void    MakePalette();
  197.  
  198. };
  199.  
  200. //{{AFX_INSERT_LOCATION}}
  201. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  202.  
  203. #endif // !defined(AFX_IMGDLG_H__F5E79507_40DD_11D1_8159_444553540000__INCLUDED_)
  204.